home *** CD-ROM | disk | FTP | other *** search
/ IRIX Base Documentation 2002 November / SGI IRIX Base Documentation 2002 November.iso / usr / share / catman / p_man / cat3 / f90 / models.z / models
Encoding:
Text File  |  2002-10-03  |  9.6 KB  |  300 lines

  1. MODELS(3I)                                            Last changed: 4-13-99
  2.  
  3.  
  4. NNAAMMEE
  5.      MMOODDEELLSS - Describes mathematical representation models for CF90 and
  6.      MIPSpro 7 Fortran 90 compiler intrinsic procedures
  7.  
  8. IIMMPPLLEEMMEENNTTAATTIIOONN
  9.      UNICOS, UNICOS/mk, IRIX systems
  10.  
  11.      CF90, MIPSpro 7 Fortran 90
  12.  
  13. SSTTAANNDDAARRDDSS
  14.      Fortran
  15.  
  16. DDEESSCCRRIIPPTTIIOONN
  17.      The compilers implement the intrinsic procedures according to the
  18.      representation models described in the Fortran standard.  The Fortran
  19.      standard describes a bit model, an integer model, and a real number
  20.      model.  For more information on these models, see the _F_o_r_t_r_a_n _L_a_n_g_u_a_g_e
  21.      _R_e_f_e_r_e_n_c_e _M_a_n_u_a_l, _V_o_l_u_m_e _2.
  22.  
  23.      BBiitt mmooddeell
  24.  
  25.      The bit model interprets a nonnegative scalar data object of type
  26.      integer as a sequence of binary digits (bits).  In the model, _w
  27.                                                                     _k
  28.      has a value of 0 or 1.  A bit is defined to be a binary digit _w
  29.      located at position _k of a nonnegative integer scalar object, which is
  30.      based on the following nonnegative integer model:
  31.                                   _k
  32.           _j = the summation of _w 2  as _k goes from 0 to _s-1
  33.                                 _k
  34.           (Refer to the printed MMOODDEELLSS(3I) man page in the _I_n_t_r_i_n_s_i_c
  35.           _P_r_o_c_e_d_u_r_e_s _R_e_f_e_r_e_n_c_e _M_a_n_u_a_l, for a graphical representation of
  36.           this summation.)
  37.  
  38.      OObbjjeecctt    DDeeffiinniittiioonn
  39.  
  40.      _j         The integer value.
  41.  
  42.      _s         The number of bits in the model.  The bits are numbered from
  43.                right to left beginning with 0.
  44.  
  45.      _w         A bit is a binary digit, _w, located at position _k.  Either 0
  46.       _k        or 1.
  47.  
  48.      For 64-bit integers, the values in the model are as follows:
  49.  
  50.      OObbjjeecctt    VVaalluuee
  51.  
  52.      _s         64
  53.  
  54.      _k         0 through 63
  55.  
  56.      On UNICOS systems, a 46-bit integer is stored in a 64-bit storage
  57.      container.
  58.  
  59.      For 32-bit integers, the values are as follows:
  60.  
  61.      OObbjjeecctt    VVaalluuee
  62.  
  63.      _s         32
  64.  
  65.      _k         0 through 31
  66.  
  67.      You can use the BBIITT__SSIIZZEE intrinsic function to determine the value of
  68.      _s in the model.
  69.  
  70.      The bit manipulation functions are based upon this bit model.  The
  71.      model deals only with nonnegative integers interpreted through these
  72.      functions and the MMVVBBIITTSS subroutine.  It is not necessarily related to
  73.      the implementation of the integer data type.  It also is independent
  74.      of the binary, octal, and hexadecimal (BBOOZZ) constants described in the
  75.      _F_o_r_t_r_a_n _L_a_n_g_u_a_g_e _R_e_f_e_r_e_n_c_e _M_a_n_u_a_l, _V_o_l_u_m_e _1.
  76.  
  77.      IInntteeggeerr mmooddeell
  78.  
  79.      The integer number system model is as follows:
  80.                                       _k-1
  81.           _i = _s * the summation of _w _r    as _k goes from 1 to q
  82.                                     _k
  83.           (Refer to the printed MMOODDEELLSS(3I) man page in the _F_o_r_t_r_a_n _L_a_n_g_u_a_g_e
  84.           _R_e_f_e_r_e_n_c_e _M_a_n_u_a_l, _V_o_l_u_m_e _2, for a graphical representation of
  85.           this summation.)
  86.  
  87.      This equation assumes the following definitions:
  88.  
  89.      OObbjjeecctt    DDeeffiinniittiioonn
  90.  
  91.      _i         The integer value.
  92.  
  93.      _s         The sign.  Either +1 or -1.
  94.  
  95.      _r         The radix.  An integer greater than 1.
  96.  
  97.      _q         The number of digits.  An integer greater than 0.
  98.  
  99.      _w         The _kth digit.  An integer 0 <= _w  < _r.
  100.       _k                                         _k
  101.  
  102.      For 64-bit integers, the values in the model are as follows:
  103.  
  104.      OObbjjeecctt    VVaalluuee
  105.  
  106.      _r         2
  107.  
  108.      _q         63
  109.  
  110.      _k         An integer 1 <= _k <= 63, and the sign bit
  111.  
  112.      For 32-bit integers on UNICOS/mk and IRIX systems, the values in the
  113.      model are as follows:
  114.  
  115.      OObbjjeecctt    VVaalluuee
  116.  
  117.      _r         2
  118.  
  119.      _q         31
  120.  
  121.      _k         An integer 1 <= _k <= 31, and the sign bit
  122.  
  123.      For 8-bit integers on IRIX systems, the values in the model are as
  124.      follows:
  125.  
  126.      OObbjjeecctt    VVaalluuee
  127.  
  128.      _r         2
  129.  
  130.      _q         7
  131.  
  132.      _k         An integer 1 <= _k <= 7, and the sign bit
  133.  
  134.      For 16-bit integers on IRIX systems, the values in the model are as
  135.      follows:
  136.  
  137.      OObbjjeecctt    VVaalluuee
  138.  
  139.      _r         2
  140.  
  141.      _q         15
  142.  
  143.      _k         An integer 1 <= _k <= 15, and the sign bit
  144.  
  145.      The values shown for the integer number system model can be retrieved
  146.      through the DDIIGGIITTSS, RRAANNGGEE, and RRAADDIIXX numeric inquiry intrinsic
  147.      functions.  The DDIIGGIITTSS function returns the number of significant
  148.      digits (_q) for an integer in the model, and the RRAANNGGEE function returns
  149.      the decimal number of significant digits.  The RRAADDIIXX function returns
  150.      the base of the model (_r).
  151.  
  152.      The HHUUGGEE numeric inquiry intrinsic function returns the largest
  153.      positive number in the integer number system model.
  154.  
  155.      RReeaall mmooddeell
  156.  
  157.      The real number system model is as follows:
  158.  
  159.           _x = 0
  160.  
  161.      or
  162.  
  163.               _e                       -_k
  164.      _x = _s * _b  * the summation of _f _b  as _k goes from 1 to _p}
  165.                                     _k
  166.  
  167.      (Refer to the printed MMOODDEELLSS(3I) man page in the _F_o_r_t_r_a_n _L_a_n_g_u_a_g_e
  168.      _R_e_f_e_r_e_n_c_e _M_a_n_u_a_l, _V_o_l_u_m_e _2, for a graphical representation of this
  169.      summation.)
  170.  
  171.      This equation assumes the following definitions:
  172.  
  173.      OObbjjeecctt    DDeeffiinniittiioonn
  174.  
  175.      _x         The real value.
  176.  
  177.      _s         The sign.  Either +1 or -1.
  178.  
  179.      _b         The base (real radix).  An integer greater than 1.
  180.  
  181.      _e         An integer between some minimum and maximum value.
  182.  
  183.      _p         The number of mantissa digits.  An integer greater than 1.
  184.  
  185.      _f         The _kth digit.  An integer 1 <= _f  < _b.
  186.       _k                                         _k
  187.                _f  can be 0 only if all _f  are 0.
  188.                 1                       _k
  189.  
  190.      For 128-bit real numbers on UNICOS systems, the values in the model
  191.      are as follows:
  192.  
  193.      OObbjjeecctt    VVaalluuee
  194.  
  195.      _b         2
  196.  
  197.      _e         8189
  198.       _m_a_x
  199.      _e         -8188
  200.       _m_i_n
  201.      _p         95
  202.  
  203.      _k         An integer 1 <= _k <= 95
  204.  
  205.      For 128-bit real numbers on IRIX systems systems, the values in the
  206.      model are as follows:
  207.  
  208.      OObbjjeecctt    VVaalluuee
  209.  
  210.      _b         2
  211.  
  212.      _e         1023
  213.       _m_a_x
  214.      _e         -967
  215.       _m_i_n
  216.      _p         107
  217.  
  218.      _k         An integer 1 <= _k <= 107
  219.  
  220.      For 128-bit real numbers on CRAY T90 systems that support IEEE
  221.      floating-point arithmetic, the values in the model are as follows:
  222.  
  223.      OObbjjeecctt    VVaalluuee
  224.  
  225.      _b         2
  226.  
  227.      _e         16384
  228.       _m_a_x
  229.      _e         -16381
  230.       _m_i_n
  231.      _p         113
  232.  
  233.      _k         An integer 1 <= _k <= 113
  234.  
  235.      For 64-bit real numbers on UNICOS systems, the values in the model are
  236.      as follows:
  237.  
  238.      OObbjjeecctt    VVaalluuee
  239.  
  240.      _b         2
  241.  
  242.      _e         8189
  243.       _m_a_x
  244.      _e         -8188
  245.       _m_i_n
  246.      _p         47
  247.  
  248.      _k         An integer 1 <= _k <= 47
  249.  
  250.      For 64-bit real numbers on IRIX systems, on CRAY T90 systems that
  251.      support IEEE floating-point arithmetic, and on UNICOS/mk systems, the
  252.      values in the model are as follows:
  253.  
  254.      OObbjjeecctt    VVaalluuee
  255.  
  256.      _b         2
  257.  
  258.      _e         1024
  259.       _m_a_x
  260.      _e         -1021
  261.       _m_i_n
  262.      _p         53
  263.  
  264.      _k         An integer 1 <= _k <= 53
  265.  
  266.      For 32-bit real numbers on UNICOS/mk and IRIX systems, the values in
  267.      the model are as follows:
  268.  
  269.      OObbjjeecctt    VVaalluuee
  270.  
  271.      _b         2
  272.  
  273.      _e         128
  274.       _m_a_x
  275.      _e         -125
  276.       _m_i_n
  277.      _p         24
  278.  
  279.      _k         An integer 1 <= _k <= 24
  280.  
  281.      The values shown for the real number system model can be retrieved
  282.      through the RRAADDIIXX, MMAAXXEEXXPPOONNEENNTT, MMIINNEEXXPPOONNEENNTT, DDIIGGIITTSS, PPRREECCIISSIIOONN, and
  283.      RRAANNGGEE numeric inquiry intrinsic functions.
  284.  
  285.      The HHUUGGEE and TTIINNYY numeric inquiry intrinsic functions return the
  286.      largest and the smallest positive number in the real number system
  287.      model.  The EEPPSSIILLOONN function returns a positive real number that is
  288.                 1-_p
  289.      _e_p_s_i_l_o_n = _b   .
  290.  
  291. NNOOTTEESS
  292.      On UNICOS systems, both execution speed and the number of bits used in
  293.      mathematical operations are affected when compiling with
  294.      ff9900 --OO ffaassttiinntt, which is the default setting.  For more information,
  295.      see _C_F_9_0 _C_o_m_m_a_n_d_s _a_n_d _D_i_r_e_c_t_i_v_e_s _R_e_f_e_r_e_n_c_e _M_a_n_u_a_l.
  296.  
  297. SSEEEE AALLSSOO
  298.      _I_n_t_r_i_n_s_i_c _P_r_o_c_e_d_u_r_e_s _R_e_f_e_r_e_n_c_e _M_a_n_u_a_l for the printed version of this
  299.      man page.
  300.